Nonvolatile memory systems, subsystems and integrated circuits are used in multiple consumer, computer and communications applications. They can be a NAND flash memory IC or NOR flash memory. Part of the memory system may contain volatile memory like static random access memory (SRAM) or dynamic random access memory (DRAM). They can be many IC's mounted on a memory card or module. A subsystem may contain at least one such module and a memory controller. A system may contain several subsystems as well as multi core CPU's (Central Processing Unit). The memory integrated circuits used in such a system may be SLC (single level) or MLC (multi level) storage. The read/write access ports to the system may be single ported or multi ported.
Today's dominant memory is flash. In flash, the dominant architecture is NAND flash. In spite of the fact that the internal IC architecture of NAND (or for that matter other flash architectures like NOR, OneNAND™) has “page” architecture for read and write access, the performance (read time, program/write time) is slow compared to volatile memory systems built with SRAMs and DRAMs. The “page” architecture in NAND indeed has “static latches” that can temporarily store data as a buffer (one page per block), and sometimes have an additional “write cache buffer” for the whole IC. The page is 1 KB (1,024 bytes) to 2 KB (2,048 bytes). Each nonvolatile memory block of NAND flash memory cells, may have 64 to 128 pages (or, 128 KB to 256 KB). Still, the performance is relatively poor to mediocre at best from a randomly and independently accessible perspective per each byte of data. The “page buffered architecture” of today's NAND flash memory does not lend itself to true, fast, read and write memory access for SSD (solid state disk) and similar commercial applications in PCs and servers for data computation, storage and multimedia execution.
The invention described in this utility patent application focuses on ways to modify the already existing “buffers” in an optimal manner to enhance the random access performance of nonvolatile IC, subsystem and system. The volatile random access memory (RAM) in a preferred embodiment is a 6-transistor SRAM memory cell at the core, and complete peripheral address decoding circuitry for independent accessible access (read, write etc) at a fine grain level of a bit, or byte. In another embodiment, the volatile RAM in each block can be an 8-transistor dual-ported SRAM. In another embodiment, the nonvolatile memory can be a DRAM. The invention is applicable to other nonvolatile or pseudo non volatile memories like PCM (phase change memory), nano crystalline memory, charge trapped memory, ferroelectric memory, magnetic memory, plastic memory and similar embodiments.